import {defineStore} from 'pinia'
import {localData, sessionData} from 'xhyk-tools/vueRequest'

// 多个项目共用域名时，防止本地资源混乱，添加前缀
let projectName = 'xhykProject'

// 跟项目有关的
export const varData = defineStore('varData', {
  // 定义属性
  state: () => {
    return {
      name: 'varData',

      // region 用户信息

      // 系统的登录token
      xhykToken: sessionData.get(`${projectName}_xhykToken`) || '',

      // 登录账号信息
      accountInfo: sessionData.get(`${projectName}_accountInfo`) || {},

      // 用户权限
      authorIds: [],

      // endregion




    }
  },

  // 定义方法
  actions: {
    saveToLocal(data = {}) {
      for (let key in data) {
        this[key] = data[key]
        localData.set(`${projectName}_${key}`, data[key])
      }
    },

    saveToSession(data = {}) {
      for (let key in data) {
        this[key] = data[key]
        sessionData.set(`${projectName}_${key}`, data[key])
      }
    },

    getLocalData(key){
      return localData.get(`${projectName}_${key}`)
    },

    getSessionData(key){
      return sessionData.get(`${projectName}_${key}`)
    }

  },
})



